class Solution {
#define FOR(i, b, e) for(int i = b; i < e; ++i)
public:
    void rotate(vector<vector<int>>& matrix)
    {
        int n = matrix.size();
        FOR(i, 0, n) FOR(j, 0, n - i) swap(matrix[i][j], matrix[n - j - 1][n - i - 1]);
        FOR(i, 0, n / 2) FOR(j, 0, n) swap(matrix[i][j], matrix[n - i - 1][j]);
    }
};